package com.itlong.cloud.operate.service;

import com.itlong.cloud.POJO.DTO.operate.OperateAssignmentManageDTO;
import com.itlong.cloud.POJO.VO.operate.OperateAssignmentDetailVO;
import com.itlong.cloud.POJO.VO.operate.OperateAssignmentPageVO;
import com.itlong.cloud.utils.page.Page;

/**
 * <desc>
 *      任务书管理服务层接口
 * </desc>
 *
 * @createDate2020/11/30
 **/
public interface IOperateAssignmentManageService {

    /**
     * <desc>
     *      获取详情
     * </desc>
     *
     * @param operateAssignmentManageDTO 运营任务书管理DTO
     * @return
     * @Author Zhu.yj
     * @createDate  2020/11/30
     */
    OperateAssignmentDetailVO getDetail(OperateAssignmentManageDTO operateAssignmentManageDTO) throws Exception;

    /**
     * <desc>
     *      分页获取任务书列表
     * </desc>
     *
     * @param operateAssignmentManageDTO 运营任务书管理DTO
     * @return 任务书分页数据
     * @Author Zhu.yj
     * @createDate  2020/12/1
     */
    Page<OperateAssignmentPageVO> getPage(OperateAssignmentManageDTO operateAssignmentManageDTO) throws Exception;

    /**
     * <desc>
     *      创建云服务费首三年订单
     * </desc>
     *
     * @Author Zhu.yj
     * @createDate  2020/12/2
     */
    boolean createCloudServiceCostOrderTimeTask(String firstSync) throws Exception;

    /**
     * <desc>
     *      手动同步任务书
     * </desc>
     *
     * @param operateAssignmentManageDTO 运营任务书管理DTO
     * @return
     * @Author Zhu.yj
     * @createDate  2020/12/17
     */
    Integer assignmentSync(OperateAssignmentManageDTO operateAssignmentManageDTO) throws Exception;

}
